home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 2000 October: Mac OS SDK / Dev.CD Oct 00 SDK1.toast / Development Kits / Mac OS / AppleShare IP 6.3 SDK / ASIP Registry / Headers / AppleShareMailServerRegistry.p < prev    next >
Encoding:
Text File  |  1999-11-01  |  4.2 KB  |  133 lines  |  [TEXT/MPS ]

  1. {
  2.      File:        AppleShareMailServerRegistry.p
  3.  
  4.      Contains:    Attributes stored by the ASIP Mail Server in the Registry.
  5.  
  6.      Version:    Technology:    AppleShare IP 6.0
  7.                  Release:    ASIP 6.2 SDK - Saturday, September 4, 1999 15:05:49
  8.  
  9.      Copyright:    © 1996-1999 by Apple Computer, Inc., all rights reserved.
  10.  
  11.      Bugs?:        For bug reports, consult the following page on
  12.                  the World Wide Web:
  13.  
  14.                      http://developer.apple.com/bugreporter/
  15.  
  16. }
  17. {$IFC UNDEFINED UsingIncludes}
  18. {$SETC UsingIncludes := 0}
  19. {$ENDC}
  20.  
  21. {$IFC NOT UsingIncludes}
  22.  UNIT AppleShareMailServerRegistry;
  23.  INTERFACE
  24. {$ENDC}
  25.  
  26. {$IFC UNDEFINED __APPLESHAREMAILSERVERREGISTRY__}
  27. {$SETC __APPLESHAREMAILSERVERREGISTRY__ := 1}
  28.  
  29. {$I+}
  30. {$SETC AppleShareMailServerRegistryIncludes := UsingIncludes}
  31. {$SETC UsingIncludes := 1}
  32.  
  33. {$IFC UNDEFINED __APPLESHAREREGISTRY__}
  34. {$I AppleShareRegistry.p}
  35. {$ENDC}
  36.  
  37.  
  38. {$PUSH}
  39. {$ALIGN MAC68K}
  40. {$LibExport+}
  41.  
  42. {
  43.    *********
  44.    Constants
  45.    *********
  46. }
  47. {  Signature, type... }
  48.  
  49. CONST
  50.     kMUMailServerSignature        = 'mail';
  51.     kMU60Attributes                = 'mU60';                        {  MailUser    6.0 }
  52.     kMUHomeServer                = 'mUhs';                        {  Home server record }
  53.  
  54.     kMUHomeServerTag            = 'Acct';
  55.  
  56. {  ASDSharedAttributeConstants  }
  57.     kMUMaxSMTPForwardLength        = 255;
  58.     kMUFingerprintLength        = 16;
  59.  
  60. {
  61.    ***************
  62.    User Attributes
  63.    ***************
  64. }
  65.  
  66. {  ASDMailUserFlags }
  67.     KMUUserEnableMask            = $0000000F;
  68.     kMUAPOPRequired                = $00000004;                    {  User must use APOP to authenticate }
  69.     kMUForwardingMask            = $000000F0;                    {  Mask to get forwarding options }
  70.     kMUNoForwarding                = $00000010;                    {  enabled mail...this bit should be set.. }
  71.     kMUForwardSMTP                = $00000020;                    {  Forward mail to SMTP address }
  72.     kMUForwardATalk                = $00000040;                    {  Forward mail to AppleTalk SMTP server }
  73.                                                                 {  6.0 flag additions }
  74.     kMUIMAPPOPFlagsMask            = $00000F00;
  75.     kMUPOPEnabled                = $00000100;                    {  User can connect over POP3 or PASS }
  76.     kMUIMAPEnabled                = $00000200;                    {  User can connect over IMAP or PASS }
  77.     kMUNotificationMask            = $0000F000;
  78.     kMUNotificationON            = $00001000;                    {  User wants mail notification }
  79.     kMUUseLastIPAddr            = $00002000;                    {  Use last IP Address for notification - notifyIPAddress is ignored.. }
  80.     kMUUseSpecificIPAddr        = $00004000;                    {  field notifyIPAddress is used...and kMUUseLastIPAddr should cleared.. }
  81.     kMUSharedBoxFlagMask        = $000F0000;
  82.     kMUSeparatePOPAndIMAP        = $00010000;                    {  User can connect over POP3, IMAP or PASS with separate inbox }
  83.     kMUShowPOPInIMAP            = $00020000;                    {  User can connect over POP3, IMAP or PASS with separate inbox }
  84.                                                                 {  legacy, do not use beyond 5.0.x versions.. }
  85.     kMUMailEnabled                = $00000001;                    {  Was kMEEnabled in version 1 - ignore, should be zero for 6.0.. }
  86.     kMULoginEnabled                = $00000002;                    {  User can connect over POP3 or PASS  - ignore, should be zero for 6.0.. }
  87.  
  88. {  Only generate C struct info, since the ASM and Pascal will be wrong }
  89. {
  90.     Note: The MU5xAttributes and MU60Attributes structs must not be altered.
  91.     The shipping code in earlier versions of our products reads and writes 
  92.     precisely these structures and any changes to the struct size or field offsets 
  93.     will destroy backwards compatibility with the older products.
  94.     In other words don't use Str32Field as the atalk field types or you'll break things!
  95. }
  96.  
  97. TYPE
  98.     ATalkStr33                            = PACKED ARRAY [0..32] OF UInt8;
  99. {
  100.    A 32 character Pascal string with a length byte.
  101.    Yes, when packed things end up on odd addresses, but that's where the old code requires it to be.
  102. }
  103.     MU60AttributesPtr = ^MU60Attributes;
  104.     MU60Attributes = RECORD
  105.         version:                UInt32;
  106.         mailUserFlags:            UInt32;
  107.         atalkForwardName:        ATalkStr33;
  108.         atalkForwardServer:        ATalkStr33;
  109.         atalkForwardZone:        ATalkStr33;
  110.         smtpForward:            PACKED ARRAY [0..255] OF CHAR;
  111.         fingerprint:            PACKED ARRAY [0..15] OF CHAR;            {  initialize to all zeros when creating attribute }
  112.         notifyIPAddress:        UInt32;
  113.     END;
  114.  
  115.     MUHomeServerPtr = ^MUHomeServer;
  116.     MUHomeServer = RECORD
  117.         tag:                    UInt32;                                    {  kMUHomeServerTag }
  118.         offset:                    UInt32;                                    {  Unused set to 0 }
  119.         data:                    Str255;                                    {  home server name, as a pascal string }
  120.         reserved:                Str255;                                    {  set to 0 }
  121.     END;
  122.  
  123. {$ALIGN RESET}
  124. {$POP}
  125.  
  126. {$SETC UsingIncludes := AppleShareMailServerRegistryIncludes}
  127.  
  128. {$ENDC} {__APPLESHAREMAILSERVERREGISTRY__}
  129.  
  130. {$IFC NOT UsingIncludes}
  131.  END.
  132. {$ENDC}
  133.